PATHMac OS 8 Developer Documentation > Operating System Services > Multiprocessing Services >

Adding Multitasking Capability to Applications Using Multiprocessing Services

   

Task State Constants

When calling the MPExtractTaskState or MPSetTaskState functions you must specify what states you want to obtain or set by passing a constant of type TaskStateKind in the kind parameter.

enum {
    kMPTaskStateRegisters   = 0,
    kMPTaskStateFPU         = 1,
    kMPTaskStateVectors     = 2,
    kMPTaskStateMachine     = 3,
    kMPTaskState32BitMemoryException= 4
    };
typedef UInt32 MPTaskStateKind;

Constant Descriptions

kMPTaskStateRegisters
The task's general-purpose (GP) registers. The RegisterInformationPowerPC structure in MachineExceptions.h defines the format of this information.
kMPTaskStateFPU
The task's floating point registers. The FPUInformationPowerPC structure in MachineExceptions.h defines the format of this information.
kMPTaskStateVectors
The task's vector registers. The VectorInformationPowerPC structure in MachineExceptions.h defines the format of this information.
kMPTaskStateMachine
The task's machine registers. The MachineInformationPowerPC structure in MachineExceptions.h defines the format of this information. Note that the MSR, ExceptKind, DSISR, and DAR registers are read-only.
kMPTaskState32BitMemoryException
The task's exception information for older 32-bit memory exceptions (that is, memory exceptions on 32-bit CPUs). The MemoryExceptionInformation structure in MachineExceptions.h defines the format of this information. This exception information is read-only.
VERSION NOTES

Introduced with Multiprocessing Services 2.0.


© 1999 Apple Computer, Inc. – (Last Updated 07 May 99)